[INFO] fetching crate asg-lang 1.1.0...
[INFO] fixing asg-lang-1.1.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate asg-lang 1.1.0 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate asg-lang 1.1.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate asg-lang 1.1.0
[INFO] tweaked toml for crates.io crate asg-lang 1.1.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate asg-lang 1.1.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate asg-lang 1.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838
[INFO] running `Command { std: "docker" "start" "f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling zerocopy v0.8.37
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]    Compiling zmij v1.0.18
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking nibble_vec v0.1.0
[INFO] [stderr]     Checking endian-type v0.1.2
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking jiff v0.2.18
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking clap_lex v0.7.7
[INFO] [stderr]     Checking radix_trie v0.2.1
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking home v0.5.12
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking clap_builder v4.5.56
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling stacker v0.1.22
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking dirs-next v2.0.0
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]     Checking fd-lock v4.0.4
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]     Checking criterion-plot v0.6.0
[INFO] [stderr]     Checking clap v4.5.56
[INFO] [stderr]     Checking rustyline v15.0.0
[INFO] [stderr]    Compiling logos-codegen v0.14.4
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.37
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking env_filter v0.1.4
[INFO] [stderr]    Compiling ar_archive_writer v0.5.1
[INFO] [stderr]    Compiling logos-derive v0.14.4
[INFO] [stderr]    Compiling psm v0.1.29
[INFO] [stderr]     Checking logos v0.14.4
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking criterion v0.7.0
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking ndarray-rand v0.15.0
[INFO] [stderr]     Checking asg-lang v1.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `asg_lang`
[INFO] [stderr]  --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs
[INFO] [stderr]  ::: src/interpreter.rs
[INFO] [stderr]  ::: src/parser/lexer.rs
[INFO] [stderr]  ::: src/parser/mod.rs
[INFO] [stderr]  ::: src/parser/parser.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]             --> src/parser/lexer.rs:9:16
[INFO] [stderr]              |
[INFO] [stderr]            9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stderr]              |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:10:3
[INFO] [stderr]               |
[INFO] [stderr]            10 | #[logos(skip r"[ \t\n\r]+")] // Пропускаем пробелы
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:11:3
[INFO] [stderr]               |
[INFO] [stderr]            11 | #[logos(skip r";[^\n]*")] // Пропускаем комментарии ; до конца строки
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:13:7
[INFO] [stderr]               |
[INFO] [stderr]            13 |     #[token("(")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:16:7
[INFO] [stderr]               |
[INFO] [stderr]            16 |     #[token(")")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:20:7
[INFO] [stderr]               |
[INFO] [stderr]            20 |     #[token("true")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:23:7
[INFO] [stderr]               |
[INFO] [stderr]            23 |     #[token("false")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:27:7
[INFO] [stderr]               |
[INFO] [stderr]            27 |     #[regex(r"-?[0-9]+\.[0-9]+([eE][+-]?[0-9]+)?", |lex| lex.slice().parse::<f64>().ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:31:7
[INFO] [stderr]               |
[INFO] [stderr]            31 |     #[regex(r"-?[0-9]+", |lex| lex.slice().parse::<i64>().ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:35:7
[INFO] [stderr]               |
[INFO] [stderr]            35 |     #[regex(r"0[xX][0-9a-fA-F]+", |lex| i64::from_str_radix(&lex.slice()[2..], 16).ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:39:7
[INFO] [stderr]               |
[INFO] [stderr]            39 |     #[regex(r"0[bB][01]+", |lex| i64::from_str_radix(&lex.slice()[2..], 2).ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:43:7
[INFO] [stderr]               |
[INFO] [stderr]            43 |     #[regex(r#""([^"\\]|\\.)*""#, |lex| {
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/interpreter.rs:998:42
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                                          ^^^^^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/interpreter.rs:998:29
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&mut _`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 998 -                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout] 998 +                 if let Some(Value::Array(arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/interpreter.rs:1765:23
[INFO] [stdout]      |
[INFO] [stdout] 1763 |                 let new_val = self.ensure_evaluated(asg, edges[2].target_node_id)?;
[INFO] [stdout]      |                     -------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `new_val` calls a custom destructor
[INFO] [stdout]      |                     `new_val` will be dropped later as of Edition 2024
[INFO] [stdout] 1764 |
[INFO] [stdout] 1765 |                 match (dict_val, key_val) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1780 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `new_val` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `new_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/interpreter.rs:3402:27
[INFO] [stdout]      |
[INFO] [stdout] 3402 |                     match self.next_lazy_element(asg, source)? {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 3403 |                         Some(val) => {
[INFO] [stdout]      |                              ---
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              `val` calls a custom destructor
[INFO] [stdout]      |                              `val` will be dropped later as of Edition 2024
[INFO] [stdout] 3404 |                             let result =
[INFO] [stdout]      |                                 ------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `result` calls a custom destructor
[INFO] [stdout]      |                                 `result` will be dropped later as of Edition 2024
[INFO] [stdout] 3405 |                                 self.call_function_value(asg, (**func).clone(), val.clone())?;
[INFO] [stdout]      |                                 -------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3414 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `val` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, std::string::String, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, std::string::String, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, std::string::String, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              --> src/parser/lexer.rs:51:7
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stderr]            51 |     #[token("<=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:53:7
[INFO] [stderr]               |
[INFO] [stderr]            53 |     #[token(">=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:55:7
[INFO] [stderr]               |
[INFO] [stderr]            55 |     #[token("==")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:57:7
[INFO] [stderr]               |
[INFO] [stderr]            57 |     #[token("!=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:59:7
[INFO] [stderr]               |
[INFO] [stderr]            59 |     #[token("&&")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:61:7
[INFO] [stderr]               |
[INFO] [stderr]            61 |     #[token("||")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:63:7
[INFO] [stderr]               |
[INFO] [stderr]            63 |     #[token("|>")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:67:7
[INFO] [stderr]               |
[INFO] [stderr]            67 |     #[token("//")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:71:7
[INFO] [stderr]               |
[INFO] [stderr]            71 |     #[token("+")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:73:7
[INFO] [stderr]               |
[INFO] [stderr]            73 |     #[token("-")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:75:7
[INFO] [stderr]               |
[INFO] [stderr]            75 |     #[token("*")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:77:7
[INFO] [stderr]               |
[INFO] [stderr]            77 |     #[token("/")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:79:7
[INFO] [stderr]               |
[INFO] [stderr]            79 |     #[token("%")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:81:7
[INFO] [stderr]               |
[INFO] [stderr]            81 |     #[token("<")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:83:7
[INFO] [stderr]               |
[INFO] [stderr]            83 |     #[token(">")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:85:7
[INFO] [stderr]               |
[INFO] [stderr]            85 |     #[token("!")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:87:7
[INFO] [stderr]               |
[INFO] [stderr]            87 |     #[token(":")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:91:7
[INFO] [stderr]               |
[INFO] [stderr]            91 |     #[regex(r"[a-zA-Z_][a-zA-Z0-9_-]*", |lex| lex.slice().to_string())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:124:1
[INFO] [stderr]                |
[INFO] [stderr]            124 | pub struct Lexer<'a> {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:14:5
[INFO] [stderr]               |
[INFO] [stderr]            14 |     source: &'source Token::Source,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:130:10
[INFO] [stderr]                |
[INFO] [stderr]            130 | impl<'a> Lexer<'a> {
[INFO] [stderr]                |          ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:122:1
[INFO] [stderr]                |
[INFO] [stderr]            122 | pub struct Parser<'a> {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:126:10
[INFO] [stderr]                |
[INFO] [stderr]            126 | impl<'a> Parser<'a> {
[INFO] [stderr]                |          ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:132:36
[INFO] [stderr]                |
[INFO] [stderr]            132 |     pub fn new(source: &'a str) -> Self {
[INFO] [stderr]                |                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:141:23
[INFO] [stderr]                |
[INFO] [stderr]            141 |     pub fn next_token(&mut self) -> Result<Spanned<Token>, ParseError> {
[INFO] [stderr]                |                       ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:150:23
[INFO] [stderr]                |
[INFO] [stderr]            150 |     pub fn peek_token(&mut self) -> Result<&Spanned<Token>, ParseError> {
[INFO] [stderr]                |                       ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:158:19
[INFO] [stderr]                |
[INFO] [stderr]            158 |     fn read_token(&mut self) -> Result<Spanned<Token>, ParseError> {
[INFO] [stderr]                |                   ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:177:22
[INFO] [stderr]                |
[INFO] [stderr]            177 |     fn convert_token(&self, logos_token: LogosToken) -> Token {
[INFO] [stderr]                |                      ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:211:21
[INFO] [stderr]                |
[INFO] [stderr]            211 |     pub fn position(&self) -> usize {
[INFO] [stderr]                |                     ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:128:36
[INFO] [stderr]                |
[INFO] [stderr]            128 |     pub fn new(source: &'a str) -> Self {
[INFO] [stderr]                |                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:135:22
[INFO] [stderr]                |
[INFO] [stderr]            135 |     pub fn parse_all(&mut self) -> Result<Vec<SExpr>, ParseError> {
[INFO] [stderr]                |                      ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:150:24
[INFO] [stderr]                |
[INFO] [stderr]            150 |     pub fn parse_sexpr(&mut self) -> Result<SExpr, ParseError> {
[INFO] [stderr]                |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:173:19
[INFO] [stderr]                |
[INFO] [stderr]            173 |     fn parse_list(&mut self, start_span: Span) -> Result<SExpr, ParseError> {
[INFO] [stderr]                |                   ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:133:9
[INFO] [stderr]                |
[INFO] [stderr]            133 |         Self {
[INFO] [stderr]                |         ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `LogosToken` in the current scope
[INFO] [stderr]               --> src/parser/lexer.rs:134:32
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- variant, associated function, or constant `lexer` not found for this enum
[INFO] [stderr]            ...
[INFO] [stderr]            134 |             logos: LogosToken::lexer(source),
[INFO] [stderr]                |                                ^^^^^ variant, associated function, or constant not found in `LogosToken`
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]                = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                        candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:146:14
[INFO] [stderr]                |
[INFO] [stderr]            146 |         self.read_token()
[INFO] [stderr]                |              ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:152:37
[INFO] [stderr]                |
[INFO] [stderr]            152 |             self.peeked = Some(self.read_token()?);
[INFO] [stderr]                |                                     ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:159:26
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            159 |         match self.logos.next() {
[INFO] [stderr]                |                          ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:1
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                | ------------------------------------------------ doesn't satisfy `logos::Lexer<'a, LogosToken>: Iterator`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]                        which is required by `logos::Lexer<'a, LogosToken>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:161:49
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            161 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                 ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:161:74
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            161 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                                          ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:162:34
[INFO] [stderr]                |
[INFO] [stderr]            162 |                 let token = self.convert_token(logos_token);
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:166:49
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            166 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                 ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:166:74
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            166 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                                          ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:212:20
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            212 |         self.logos.span().start
[INFO] [stderr]                |                    ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:129:9
[INFO] [stderr]                |
[INFO] [stderr]            129 |         Self {
[INFO] [stderr]                |         ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:130:20
[INFO] [stderr]                |
[INFO] [stderr]            130 |             lexer: Lexer::new(source),
[INFO] [stderr]                |                    ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:130:20
[INFO] [stderr]                |
[INFO] [stderr]            130 |             lexer: Lexer::new(source),
[INFO] [stderr]                |                    ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:139:36
[INFO] [stderr]                |
[INFO] [stderr]            139 |             let token = self.lexer.peek_token()?;
[INFO] [stderr]                |                                    ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:143:29
[INFO] [stderr]                |
[INFO] [stderr]            143 |             exprs.push(self.parse_sexpr()?);
[INFO] [stderr]                |                             ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:151:32
[INFO] [stderr]                |
[INFO] [stderr]            151 |         let token = self.lexer.next_token()?;
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:154:35
[INFO] [stderr]                |
[INFO] [stderr]            154 |             Token::LParen => self.parse_list(token.span),
[INFO] [stderr]                |                                   ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:177:36
[INFO] [stderr]                |
[INFO] [stderr]            177 |             let token = self.lexer.peek_token()?;
[INFO] [stderr]                |                                    ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:181:48
[INFO] [stderr]                |
[INFO] [stderr]            181 |                     let end_token = self.lexer.next_token()?;
[INFO] [stderr]                |                                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:189:40
[INFO] [stderr]                |
[INFO] [stderr]            189 |                     elements.push(self.parse_sexpr()?);
[INFO] [stderr]                |                                        ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:78:22
[INFO] [stderr]               |
[INFO] [stderr]            78 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:78:22
[INFO] [stderr]               |
[INFO] [stderr]            78 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:80:10
[INFO] [stderr]               |
[INFO] [stderr]            80 |         .parse_all()
[INFO] [stderr]               |          ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:99:22
[INFO] [stderr]               |
[INFO] [stderr]            99 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:99:22
[INFO] [stderr]               |
[INFO] [stderr]            99 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/mod.rs:101:10
[INFO] [stderr]                |
[INFO] [stderr]            101 |         .parse_sexpr()
[INFO] [stderr]                |          ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            warning: relative drop order changing in Rust 2024
[INFO] [stderr]                --> src/interpreter.rs:1765:23
[INFO] [stderr]                 |
[INFO] [stderr]            1763 |                 let new_val = self.ensure_evaluated(asg, edges[2].target_node_id)?;
[INFO] [stderr]                 |                     -------
[INFO] [stderr]                 |                     |
[INFO] [stderr]                 |                     `new_val` calls a custom destructor
[INFO] [stderr]                 |                     `new_val` will be dropped later as of Edition 2024
[INFO] [stderr]            1764 |
[INFO] [stderr]            1765 |                 match (dict_val, key_val) {
[INFO] [stderr]                 |                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 |                       |
[INFO] [stderr]                 |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stderr]                 |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]            1780 |             }
[INFO] [stderr]                 |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#1` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `new_val` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `new_val` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stderr]                 = warning: this changes meaning in Rust 2024
[INFO] [stderr]                 = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stderr]                 = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            warning: relative drop order changing in Rust 2024
[INFO] [stderr]                --> src/interpreter.rs:3402:27
[INFO] [stderr]                 |
[INFO] [stderr]            3402 |                     match self.next_lazy_element(asg, source)? {
[INFO] [stderr]                 |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 |                           |
[INFO] [stderr]                 |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stderr]                 |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]                 |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stderr]                 |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]            3403 |                         Some(val) => {
[INFO] [stderr]                 |                              ---
[INFO] [stderr]                 |                              |
[INFO] [stderr]                 |                              `val` calls a custom destructor
[INFO] [stderr]                 |                              `val` will be dropped later as of Edition 2024
[INFO] [stderr]            3404 |                             let result =
[INFO] [stderr]                 |                                 ------
[INFO] [stderr]                 |                                 |
[INFO] [stderr]                 |                                 `result` calls a custom destructor
[INFO] [stderr]                 |                                 `result` will be dropped later as of Edition 2024
[INFO] [stderr]            3405 |                                 self.call_function_value(asg, (**func).clone(), val.clone())?;
[INFO] [stderr]                 |                                 -------------------------------------------------------------
[INFO] [stderr]                 |                                 |
[INFO] [stderr]                 |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stderr]                 |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]            3414 |                 }
[INFO] [stderr]                 |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#2` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#3` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `val` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `val` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `result` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#1` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stderr]                 = warning: this changes meaning in Rust 2024
[INFO] [stderr]                 = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 72 previous errors; 2 warnings emitted
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0277, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]    Migrating examples/autograd_demo.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `asg_lang`
[INFO] [stderr]  --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs
[INFO] [stderr]  ::: src/interpreter.rs
[INFO] [stderr]  ::: src/parser/lexer.rs
[INFO] [stderr]  ::: src/parser/mod.rs
[INFO] [stderr]  ::: src/parser/parser.rs
[INFO] [stderr]   = cause: error: expected one of `(`, `,`, `::`, or `=`, found `+`
[INFO] [stderr]             --> src/parser/lexer.rs:9:16
[INFO] [stderr]              |
[INFO] [stderr]            9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stderr]              |                ^ expected one of `(`, `,`, `::`, or `=`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:10:3
[INFO] [stderr]               |
[INFO] [stderr]            10 | #[logos(skip r"[ \t\n\r]+")] // Пропускаем пробелы
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `logos` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:11:3
[INFO] [stderr]               |
[INFO] [stderr]            11 | #[logos(skip r";[^\n]*")] // Пропускаем комментарии ; до конца строки
[INFO] [stderr]               |   ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]               = note: `logos` is in scope, but it is a crate, not an attribute
[INFO] [stderr]            help: `logos` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:13:7
[INFO] [stderr]               |
[INFO] [stderr]            13 |     #[token("(")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:16:7
[INFO] [stderr]               |
[INFO] [stderr]            16 |     #[token(")")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:20:7
[INFO] [stderr]               |
[INFO] [stderr]            20 |     #[token("true")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:23:7
[INFO] [stderr]               |
[INFO] [stderr]            23 |     #[token("false")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:27:7
[INFO] [stderr]               |
[INFO] [stderr]            27 |     #[regex(r"-?[0-9]+\.[0-9]+([eE][+-]?[0-9]+)?", |lex| lex.slice().parse::<f64>().ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:31:7
[INFO] [stderr]               |
[INFO] [stderr]            31 |     #[regex(r"-?[0-9]+", |lex| lex.slice().parse::<i64>().ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:35:7
[INFO] [stderr]               |
[INFO] [stderr]            35 |     #[regex(r"0[xX][0-9a-fA-F]+", |lex| i64::from_str_radix(&lex.slice()[2..], 16).ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:39:7
[INFO] [stderr]               |
[INFO] [stderr]            39 |     #[regex(r"0[bB][01]+", |lex| i64::from_str_radix(&lex.slice()[2..], 2).ok())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:43:7
[INFO] [stderr]               |
[INFO] [stderr]            43 |     #[regex(r#""([^"\\]|\\.)*""#, |lex| {
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:51:7
[INFO] [stderr]               |
[INFO] [stderr]            51 |     #[token("<=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:53:7
[INFO] [stderr]               |
[INFO] [stderr]            53 |     #[token(">=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:55:7
[INFO] [stderr]               |
[INFO] [stderr]            55 |     #[token("==")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:57:7
[INFO] [stderr]               |
[INFO] [stderr]            57 |     #[token("!=")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:59:7
[INFO] [stderr]               |
[INFO] [stderr]            59 |     #[token("&&")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:61:7
[INFO] [stderr]               |
[INFO] [stderr]            61 |     #[token("||")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:63:7
[INFO] [stderr]               |
[INFO] [stderr]            63 |     #[token("|>")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:67:7
[INFO] [stderr]               |
[INFO] [stderr]            67 |     #[token("//")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:71:7
[INFO] [stderr]               |
[INFO] [stderr]            71 |     #[token("+")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:73:7
[INFO] [stderr]               |
[INFO] [stderr]            73 |     #[token("-")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:75:7
[INFO] [stderr]               |
[INFO] [stderr]            75 |     #[token("*")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:77:7
[INFO] [stderr]               |
[INFO] [stderr]            77 |     #[token("/")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:79:7
[INFO] [stderr]               |
[INFO] [stderr]            79 |     #[token("%")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:81:7
[INFO] [stderr]               |
[INFO] [stderr]            81 |     #[token("<")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:83:7
[INFO] [stderr]               |
[INFO] [stderr]            83 |     #[token(">")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:85:7
[INFO] [stderr]               |
[INFO] [stderr]            85 |     #[token("!")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `token` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:87:7
[INFO] [stderr]               |
[INFO] [stderr]            87 |     #[token(":")]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `token` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: cannot find attribute `regex` in this scope
[INFO] [stderr]              --> src/parser/lexer.rs:91:7
[INFO] [stderr]               |
[INFO] [stderr]            91 |     #[regex(r"[a-zA-Z_][a-zA-Z0-9_-]*", |lex| lex.slice().to_string())]
[INFO] [stderr]               |       ^^^^^
[INFO] [stderr]               |
[INFO] [stderr]            help: `regex` is an attribute that can be used by the derive macro `Logos`, you might be missing a `derive` attribute
[INFO] [stderr]               |
[INFO] [stderr]            12 + #[derive(Logos)]
[INFO] [stderr]            13 | enum LogosToken {
[INFO] [stderr]               |
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:124:1
[INFO] [stderr]                |
[INFO] [stderr]            124 | pub struct Lexer<'a> {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]              --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:14:5
[INFO] [stderr]               |
[INFO] [stderr]            14 |     source: &'source Token::Source,
[INFO] [stderr]               |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:130:10
[INFO] [stderr]                |
[INFO] [stderr]            130 | impl<'a> Lexer<'a> {
[INFO] [stderr]                |          ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:122:1
[INFO] [stderr]                |
[INFO] [stderr]            122 | pub struct Parser<'a> {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:126:10
[INFO] [stderr]                |
[INFO] [stderr]            126 | impl<'a> Parser<'a> {
[INFO] [stderr]                |          ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:132:36
[INFO] [stderr]                |
[INFO] [stderr]            132 |     pub fn new(source: &'a str) -> Self {
[INFO] [stderr]                |                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:141:23
[INFO] [stderr]                |
[INFO] [stderr]            141 |     pub fn next_token(&mut self) -> Result<Spanned<Token>, ParseError> {
[INFO] [stderr]                |                       ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:150:23
[INFO] [stderr]                |
[INFO] [stderr]            150 |     pub fn peek_token(&mut self) -> Result<&Spanned<Token>, ParseError> {
[INFO] [stderr]                |                       ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:158:19
[INFO] [stderr]                |
[INFO] [stderr]            158 |     fn read_token(&mut self) -> Result<Spanned<Token>, ParseError> {
[INFO] [stderr]                |                   ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:177:22
[INFO] [stderr]                |
[INFO] [stderr]            177 |     fn convert_token(&self, logos_token: LogosToken) -> Token {
[INFO] [stderr]                |                      ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:211:21
[INFO] [stderr]                |
[INFO] [stderr]            211 |     pub fn position(&self) -> usize {
[INFO] [stderr]                |                     ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:128:36
[INFO] [stderr]                |
[INFO] [stderr]            128 |     pub fn new(source: &'a str) -> Self {
[INFO] [stderr]                |                                    ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:135:22
[INFO] [stderr]                |
[INFO] [stderr]            135 |     pub fn parse_all(&mut self) -> Result<Vec<SExpr>, ParseError> {
[INFO] [stderr]                |                      ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/interpreter.rs:998:42
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                                          ^^^^^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/interpreter.rs:998:29
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&mut _`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 998 -                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout] 998 +                 if let Some(Value::Array(arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/interpreter.rs:1765:23
[INFO] [stdout]      |
[INFO] [stdout] 1763 |                 let new_val = self.ensure_evaluated(asg, edges[2].target_node_id)?;
[INFO] [stdout]      |                     -------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `new_val` calls a custom destructor
[INFO] [stdout]      |                     `new_val` will be dropped later as of Edition 2024
[INFO] [stdout] 1764 |
[INFO] [stdout] 1765 |                 match (dict_val, key_val) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1780 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `new_val` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `new_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> src/parser/parser.rs:150:24
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/interpreter.rs:3402:27
[INFO] [stdout]      |
[INFO] [stdout] 3402 |                     match self.next_lazy_element(asg, source)? {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 3403 |                         Some(val) => {
[INFO] [stdout]      |                              ---
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              `val` calls a custom destructor
[INFO] [stdout]      |                              `val` will be dropped later as of Edition 2024
[INFO] [stdout] 3404 |                             let result =
[INFO] [stdout]      |                                 ------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `result` calls a custom destructor
[INFO] [stdout]      |                                 `result` will be dropped later as of Edition 2024
[INFO] [stdout] 3405 |                                 self.call_function_value(asg, (**func).clone(), val.clone())?;
[INFO] [stdout]      |                                 -------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3414 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `val` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]      |
[INFO] [stdout]  164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, std::string::String, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            150 |     pub fn parse_sexpr(&mut self) -> Result<SExpr, ParseError> {
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, std::string::String, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, std::string::String, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, f64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: `impl logos::internal::CallbackResult<'s, i64, LogosToken>` will capture more lifetimes than possibly intended in edition 2024
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds
[INFO] [stdout]  --> src/parser/lexer.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos, Debug, Clone, PartialEq)]
[INFO] [stdout]   |          ^
[INFO] [stdout]   = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024
[INFO] [stdout]   = warning: this changes meaning in Rust 2024
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/rpit-lifetime-capture.html>
[INFO] [stdout]   = note: this warning originates in the derive macro `Logos` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Logos + use<'s>, Debug, Clone, PartialEq)]
[INFO] [stdout]   |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:173:19
[INFO] [stderr]                |
[INFO] [stderr]            173 |     fn parse_list(&mut self, start_span: Span) -> Result<SExpr, ParseError> {
[INFO] [stderr]                |                   ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:133:9
[INFO] [stderr]                |
[INFO] [stderr]            133 |         Self {
[INFO] [stderr]                |         ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: no variant, associated function, or constant named `lexer` found for enum `LogosToken` in the current scope
[INFO] [stderr]               --> src/parser/lexer.rs:134:32
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- variant, associated function, or constant `lexer` not found for this enum
[INFO] [stderr]            ...
[INFO] [stderr]            134 |             logos: LogosToken::lexer(source),
[INFO] [stderr]                |                                ^^^^^ variant, associated function, or constant not found in `LogosToken`
[INFO] [stderr]                |
[INFO] [stderr]                = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stderr]                = note: the following trait defines an item `lexer`, perhaps you need to implement it:
[INFO] [stderr]                        candidate #1: `Logos`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:146:14
[INFO] [stderr]                |
[INFO] [stderr]            146 |         self.read_token()
[INFO] [stderr]                |              ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:152:37
[INFO] [stderr]                |
[INFO] [stderr]            152 |             self.peeked = Some(self.read_token()?);
[INFO] [stderr]                |                                     ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `next` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:159:26
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            159 |         match self.logos.next() {
[INFO] [stderr]                |                          ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]               ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lexer.rs:13:1
[INFO] [stderr]                |
[INFO] [stderr]             13 | pub struct Lexer<'source, Token: Logos<'source>> {
[INFO] [stderr]                | ------------------------------------------------ doesn't satisfy `logos::Lexer<'a, LogosToken>: Iterator`
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]                        which is required by `logos::Lexer<'a, LogosToken>: Iterator`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:161:49
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            161 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                 ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:161:74
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            161 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                                          ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:162:34
[INFO] [stderr]                |
[INFO] [stderr]            162 |                 let token = self.convert_token(logos_token);
[INFO] [stderr]                |                                  ^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:166:49
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            166 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                 ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:166:74
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            166 |                 let span = Span::new(self.logos.span().start, self.logos.span().end);
[INFO] [stderr]                |                                                                          ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0599]: the method `span` exists for struct `logos::Lexer<'a, LogosToken>`, but its trait bounds were not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:212:20
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | --------------- doesn't satisfy `LogosToken: Logos<'_>`
[INFO] [stderr]            ...
[INFO] [stderr]            212 |         self.logos.span().start
[INFO] [stderr]                |                    ^^^^ method cannot be called on `logos::Lexer<'a, LogosToken>` due to unsatisfied trait bounds
[INFO] [stderr]                |
[INFO] [stderr]                = note: the following trait bounds were not satisfied:
[INFO] [stderr]                        `LogosToken: Logos<'_>`
[INFO] [stderr]            note: the trait `Logos` must be implemented
[INFO] [stderr]               --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/logos-0.14.4/src/lib.rs:44:1
[INFO] [stderr]                |
[INFO] [stderr]             44 | pub trait Logos<'source>: Sized {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:222:25
[INFO] [stderr]                |
[INFO] [stderr]            222 |         let mut lexer = Lexer::new("(+ 1 2)");
[INFO] [stderr]                |                         ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:222:25
[INFO] [stderr]                |
[INFO] [stderr]            222 |         let mut lexer = Lexer::new("(+ 1 2)");
[INFO] [stderr]                |                         ^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:224:32
[INFO] [stderr]                |
[INFO] [stderr]            224 |         assert!(matches!(lexer.next_token().unwrap().value, Token::LParen));
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:226:19
[INFO] [stderr]                |
[INFO] [stderr]            226 |             lexer.next_token().unwrap().value,
[INFO] [stderr]                |                   ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:229:32
[INFO] [stderr]                |
[INFO] [stderr]            229 |         assert!(matches!(lexer.next_token().unwrap().value, Token::Int(1)));
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:230:32
[INFO] [stderr]                |
[INFO] [stderr]            230 |         assert!(matches!(lexer.next_token().unwrap().value, Token::Int(2)));
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:231:32
[INFO] [stderr]                |
[INFO] [stderr]            231 |         assert!(matches!(lexer.next_token().unwrap().value, Token::RParen));
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:232:32
[INFO] [stderr]                |
[INFO] [stderr]            232 |         assert!(matches!(lexer.next_token().unwrap().value, Token::Eof));
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:237:25
[INFO] [stderr]                |
[INFO] [stderr]            237 |         let mut lexer = Lexer::new(r#""hello\nworld""#);
[INFO] [stderr]                |                         ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:237:25
[INFO] [stderr]                |
[INFO] [stderr]            237 |         let mut lexer = Lexer::new(r#""hello\nworld""#);
[INFO] [stderr]                |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:238:21
[INFO] [stderr]                |
[INFO] [stderr]            238 |         match lexer.next_token().unwrap().value {
[INFO] [stderr]                |                     ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:246:25
[INFO] [stderr]                |
[INFO] [stderr]            246 |         let mut lexer = Lexer::new("; comment\n42");
[INFO] [stderr]                |                         ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:246:25
[INFO] [stderr]                |
[INFO] [stderr]            246 |         let mut lexer = Lexer::new("; comment\n42");
[INFO] [stderr]                |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:247:32
[INFO] [stderr]                |
[INFO] [stderr]            247 |         assert!(matches!(lexer.next_token().unwrap().value, Token::Int(42)));
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:252:25
[INFO] [stderr]                |
[INFO] [stderr]            252 |         let mut lexer = Lexer::new("3.14");
[INFO] [stderr]                |                         ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:252:25
[INFO] [stderr]                |
[INFO] [stderr]            252 |         let mut lexer = Lexer::new("3.14");
[INFO] [stderr]                |                         ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/lexer.rs:253:21
[INFO] [stderr]                |
[INFO] [stderr]            253 |         match lexer.next_token().unwrap().value {
[INFO] [stderr]                |                     ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'a>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:129:9
[INFO] [stderr]                |
[INFO] [stderr]            129 |         Self {
[INFO] [stderr]                |         ^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'a>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:130:20
[INFO] [stderr]                |
[INFO] [stderr]            130 |             lexer: Lexer::new(source),
[INFO] [stderr]                |                    ^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:130:20
[INFO] [stderr]                |
[INFO] [stderr]            130 |             lexer: Lexer::new(source),
[INFO] [stderr]                |                    ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:139:36
[INFO] [stderr]                |
[INFO] [stderr]            139 |             let token = self.lexer.peek_token()?;
[INFO] [stderr]                |                                    ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:143:29
[INFO] [stderr]                |
[INFO] [stderr]            143 |             exprs.push(self.parse_sexpr()?);
[INFO] [stderr]                |                             ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:151:32
[INFO] [stderr]                |
[INFO] [stderr]            151 |         let token = self.lexer.next_token()?;
[INFO] [stderr]                |                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:154:35
[INFO] [stderr]                |
[INFO] [stderr]            154 |             Token::LParen => self.parse_list(token.span),
[INFO] [stderr]                |                                   ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:177:36
[INFO] [stderr]                |
[INFO] [stderr]            177 |             let token = self.lexer.peek_token()?;
[INFO] [stderr]                |                                    ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:181:48
[INFO] [stderr]                |
[INFO] [stderr]            181 |                     let end_token = self.lexer.next_token()?;
[INFO] [stderr]                |                                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:189:40
[INFO] [stderr]                |
[INFO] [stderr]            189 |                     elements.push(self.parse_sexpr()?);
[INFO] [stderr]                |                                        ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:202:26
[INFO] [stderr]                |
[INFO] [stderr]            202 |         let mut parser = Parser::new("42");
[INFO] [stderr]                |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:202:26
[INFO] [stderr]                |
[INFO] [stderr]            202 |         let mut parser = Parser::new("42");
[INFO] [stderr]                |                          ^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:203:27
[INFO] [stderr]                |
[INFO] [stderr]            203 |         let expr = parser.parse_sexpr().unwrap();
[INFO] [stderr]                |                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:209:26
[INFO] [stderr]                |
[INFO] [stderr]            209 |         let mut parser = Parser::new("(+ 1 2)");
[INFO] [stderr]                |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:209:26
[INFO] [stderr]                |
[INFO] [stderr]            209 |         let mut parser = Parser::new("(+ 1 2)");
[INFO] [stderr]                |                          ^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:210:27
[INFO] [stderr]                |
[INFO] [stderr]            210 |         let expr = parser.parse_sexpr().unwrap();
[INFO] [stderr]                |                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:221:26
[INFO] [stderr]                |
[INFO] [stderr]            221 |         let mut parser = Parser::new("(+ (* 2 3) 4)");
[INFO] [stderr]                |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:221:26
[INFO] [stderr]                |
[INFO] [stderr]            221 |         let mut parser = Parser::new("(+ (* 2 3) 4)");
[INFO] [stderr]                |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:222:27
[INFO] [stderr]                |
[INFO] [stderr]            222 |         let expr = parser.parse_sexpr().unwrap();
[INFO] [stderr]                |                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:230:26
[INFO] [stderr]                |
[INFO] [stderr]            230 |         let mut parser = Parser::new("(fn add (a b) (+ a b))");
[INFO] [stderr]                |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:230:26
[INFO] [stderr]                |
[INFO] [stderr]            230 |         let mut parser = Parser::new("(fn add (a b) (+ a b))");
[INFO] [stderr]                |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:231:27
[INFO] [stderr]                |
[INFO] [stderr]            231 |         let expr = parser.parse_sexpr().unwrap();
[INFO] [stderr]                |                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:237:26
[INFO] [stderr]                |
[INFO] [stderr]            237 |         let mut parser = Parser::new("()");
[INFO] [stderr]                |                          ^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:237:26
[INFO] [stderr]                |
[INFO] [stderr]            237 |         let mut parser = Parser::new("()");
[INFO] [stderr]                |                          ^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/parser.rs:238:27
[INFO] [stderr]                |
[INFO] [stderr]            238 |         let expr = parser.parse_sexpr().unwrap();
[INFO] [stderr]                |                           ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:78:22
[INFO] [stderr]               |
[INFO] [stderr]            78 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:78:22
[INFO] [stderr]               |
[INFO] [stderr]            78 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:80:10
[INFO] [stderr]               |
[INFO] [stderr]            80 |         .parse_all()
[INFO] [stderr]               |          ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:99:22
[INFO] [stderr]               |
[INFO] [stderr]            99 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]              --> src/parser/mod.rs:99:22
[INFO] [stderr]               |
[INFO] [stderr]            99 |     let mut parser = Parser::new(source);
[INFO] [stderr]               |                      ^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]               |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]              --> src/parser/lexer.rs:12:1
[INFO] [stderr]               |
[INFO] [stderr]            12 | enum LogosToken {
[INFO] [stderr]               | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0277]: the trait bound `LogosToken: Logos<'_>` is not satisfied
[INFO] [stderr]               --> src/parser/mod.rs:101:10
[INFO] [stderr]                |
[INFO] [stderr]            101 |         .parse_sexpr()
[INFO] [stderr]                |          ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]                |
[INFO] [stderr]            help: the trait `Logos<'_>` is not implemented for `LogosToken`
[INFO] [stderr]               --> src/parser/lexer.rs:12:1
[INFO] [stderr]                |
[INFO] [stderr]             12 | enum LogosToken {
[INFO] [stderr]                | ^^^^^^^^^^^^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            warning: relative drop order changing in Rust 2024
[INFO] [stderr]                --> src/interpreter.rs:1765:23
[INFO] [stderr]                 |
[INFO] [stderr]            1763 |                 let new_val = self.ensure_evaluated(asg, edges[2].target_node_id)?;
[INFO] [stderr]                 |                     -------
[INFO] [stderr]                 |                     |
[INFO] [stderr]                 |                     `new_val` calls a custom destructor
[INFO] [stderr]                 |                     `new_val` will be dropped later as of Edition 2024
[INFO] [stderr]            1764 |
[INFO] [stderr]            1765 |                 match (dict_val, key_val) {
[INFO] [stderr]                 |                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 |                       |
[INFO] [stderr]                 |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stderr]                 |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]            1780 |             }
[INFO] [stderr]                 |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#1` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `new_val` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `new_val` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stderr]                 = warning: this changes meaning in Rust 2024
[INFO] [stderr]                 = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stderr]                 = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            warning: relative drop order changing in Rust 2024
[INFO] [stderr]                --> src/interpreter.rs:3402:27
[INFO] [stderr]                 |
[INFO] [stderr]            3402 |                     match self.next_lazy_element(asg, source)? {
[INFO] [stderr]                 |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 |                           |
[INFO] [stderr]                 |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stderr]                 |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]                 |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stderr]                 |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]            3403 |                         Some(val) => {
[INFO] [stderr]                 |                              ---
[INFO] [stderr]                 |                              |
[INFO] [stderr]                 |                              `val` calls a custom destructor
[INFO] [stderr]                 |                              `val` will be dropped later as of Edition 2024
[INFO] [stderr]            3404 |                             let result =
[INFO] [stderr]                 |                                 ------
[INFO] [stderr]                 |                                 |
[INFO] [stderr]                 |                                 `result` calls a custom destructor
[INFO] [stderr]                 |                                 `result` will be dropped later as of Edition 2024
[INFO] [stderr]            3405 |                                 self.call_function_value(asg, (**func).clone(), val.clone())?;
[INFO] [stderr]                 |                                 -------------------------------------------------------------
[INFO] [stderr]                 |                                 |
[INFO] [stderr]                 |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stderr]                 |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]            3414 |                 }
[INFO] [stderr]                 |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stderr]                 |
[INFO] [stderr]                 = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#2` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#3` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `val` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `val` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `result` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stderr]            note: `#1` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stderr]                 |
[INFO] [stderr]             164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stderr]                 = warning: this changes meaning in Rust 2024
[INFO] [stderr]                 = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 104 previous errors; 2 warnings emitted
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            Some errors have detailed explanations: E0277, E0599.
[INFO] [stderr]            
[INFO] [stderr]            For more information about an error, try `rustc --explain E0277`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]    Migrating benches/interpreter_bench.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/http_server.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/parser_demo.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/file_processing.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating src/bin/asg.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bin/asg.rs:240:31
[INFO] [stdout]     |
[INFO] [stdout] 238 |                     let mut last_value = Value::Unit;
[INFO] [stdout]     |                         --------------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `last_value` calls a custom destructor
[INFO] [stdout]     |                         `last_value` will be dropped later as of Edition 2024
[INFO] [stdout] 239 |                     for root_id in root_ids {
[INFO] [stdout] 240 |                         match interpreter.execute(&asg, root_id) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 247 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `last_value` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `last_value` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bin/asg.rs:444:23
[INFO] [stdout]     |
[INFO] [stdout] 440 |             let mut last_value = Value::Unit;
[INFO] [stdout]     |                 --------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `last_value` calls a custom destructor
[INFO] [stdout]     |                 `last_value` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 444 |                 match interpreter.execute(&asg, root_id) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 453 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `last_value` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `last_value` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bin/asg.rs:472:19
[INFO] [stdout]     |
[INFO] [stdout] 471 |             let mut interpreter = Interpreter::new();
[INFO] [stdout]     |                 ---------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `interpreter` calls a custom destructor
[INFO] [stdout]     |                 `interpreter` will be dropped later as of Edition 2024
[INFO] [stdout] 472 |             match interpreter.execute(&asg, root_id) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 479 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `interpreter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `interpreter` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bin/asg.rs:240:31
[INFO] [stdout]     |
[INFO] [stdout] 238 |                     let mut last_value = Value::Unit;
[INFO] [stdout]     |                         --------------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `last_value` calls a custom destructor
[INFO] [stdout]     |                         `last_value` will be dropped later as of Edition 2024
[INFO] [stdout] 239 |                     for root_id in root_ids {
[INFO] [stdout] 240 |                         match interpreter.execute(&asg, root_id) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 247 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `last_value` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `last_value` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bin/asg.rs:444:23
[INFO] [stdout]     |
[INFO] [stdout] 440 |             let mut last_value = Value::Unit;
[INFO] [stdout]     |                 --------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `last_value` calls a custom destructor
[INFO] [stdout]     |                 `last_value` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 444 |                 match interpreter.execute(&asg, root_id) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 453 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `last_value` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `last_value` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/bin/asg.rs:472:19
[INFO] [stdout]     |
[INFO] [stdout] 471 |             let mut interpreter = Interpreter::new();
[INFO] [stdout]     |                 ---------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `interpreter` calls a custom destructor
[INFO] [stdout]     |                 `interpreter` will be dropped later as of Edition 2024
[INFO] [stdout] 472 |             match interpreter.execute(&asg, root_id) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 479 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `interpreter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `interpreter` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.16.1/src/data_repr.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | impl<A> Drop for OwnedRepr<A>
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/fibonacci.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating benches/serialization_bench.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 42.37s
[INFO] [stderr] crater-edition-check: asg-lang v1.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking asg-lang v1.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/interpreter.rs:998:42
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                                          ^^^^^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/interpreter.rs:998:29
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&mut _`
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 998 -                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout] 998 +                 if let Some(Value::Array(arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot explicitly borrow within an implicitly-borrowing pattern
[INFO] [stdout]    --> src/interpreter.rs:998:42
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                                          ^^^^^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/reference/patterns.html#binding-modes>
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/interpreter.rs:998:29
[INFO] [stdout]     |
[INFO] [stdout] 998 |                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&mut _`
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 998 -                 if let Some(Value::Array(ref mut arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout] 998 +                 if let Some(Value::Array(arr)) = self.variables.get_mut(&var_name) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `asg-lang` (lib test) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `asg-lang` (lib) due to 1 previous error
[INFO] running `Command { std: "docker" "inspect" "f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838", kill_on_drop: false }`
[INFO] [stdout] f793a600f1aadaa9e0365871bc87588b77603ec9e95f34e317215348bd326838
